﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace IntoNails.Infrastructure.DataAccess
{
    public interface IDataRepository<T, in K>
    {
        T Get(K uniqueCode);
        IList<T> GetRawItemList();

        void Add(T item);
        void Remove(K uniqueCode);
        void Update(K oldItemKey, T newItem);

        void Save();
        int Load();

        void Initialize();
    }
}
